package com.global.college.data.net;

import com.chad.library.adapter.base.entity.AbstractExpandableItem;
import com.chad.library.adapter.base.entity.MultiItemEntity;
import com.global.college.adapter.TrainExpandAdapter;

import java.util.List;

/**
 * 学习阶段
 * @author: xjh
 * @datetime: 2021/12/7
 */
public class TrainStageBean extends AbstractExpandableItem implements MultiItemEntity {

    private String classId;
    private List<TrainWeekBean.ClassModelListBean> classModelList;
    private String createTime;
    private String createUser;
    private String id;
    private String name;
    private String parentId;
    private Integer sort;
    private List<TrainWeekBean> trainingClassList;
    private String trainingId;
    private String updateTime;

    @Override
    public int getLevel() {
        return 0;
    }

    @Override
    public int getItemType() {
        return TrainExpandAdapter.TYPE_TRAIN_0;
    }

    public static class TrainWeekBean extends AbstractExpandableItem implements MultiItemEntity{
        private String classId;
        private List<ClassModelListBean> classModelList;
        private String createTime;
        private String createUser;
        private String id;
        private String name;
        private String parentId;
        private Integer sort;
        private List<?> trainingClassList;
        private String trainingId;
        private String updateTime;

        @Override
        public int getLevel() {
            return 1;
        }

        @Override
        public int getItemType() {
            return TrainExpandAdapter.TYPE_TRAIN_1;
        }

        public static class ClassModelListBean implements MultiItemEntity{
            private List<?> catalogModels;
            private String classCatalog;
            private String classCover;
            private Integer classDuration;
            private Integer classHot;
            private String classId;
            private Integer classLevel;
            private String className;
            private String classNote;
            private Integer classNum;
            private Integer classState;
            private String classSubjectTag;
            private String createTime;
            private String createUser;
            private Integer enabled;
            private String id;
            private String lecturer;
            private String lecturerInfo;
            private Integer publishStatus;
            private String updateTime;

            public List<?> getCatalogModels() {
                return catalogModels;
            }

            public void setCatalogModels(List<?> catalogModels) {
                this.catalogModels = catalogModels;
            }

            public String getClassCatalog() {
                return classCatalog;
            }

            public void setClassCatalog(String classCatalog) {
                this.classCatalog = classCatalog;
            }

            public String getClassCover() {
                return classCover;
            }

            public void setClassCover(String classCover) {
                this.classCover = classCover;
            }

            public Integer getClassDuration() {
                return classDuration;
            }

            public void setClassDuration(Integer classDuration) {
                this.classDuration = classDuration;
            }

            public Integer getClassHot() {
                return classHot;
            }

            public void setClassHot(Integer classHot) {
                this.classHot = classHot;
            }

            public String getClassId() {
                return classId;
            }

            public void setClassId(String classId) {
                this.classId = classId;
            }

            public Integer getClassLevel() {
                return classLevel;
            }

            public void setClassLevel(Integer classLevel) {
                this.classLevel = classLevel;
            }

            public String getClassName() {
                return className;
            }

            public void setClassName(String className) {
                this.className = className;
            }

            public String getClassNote() {
                return classNote;
            }

            public void setClassNote(String classNote) {
                this.classNote = classNote;
            }

            public Integer getClassNum() {
                return classNum;
            }

            public void setClassNum(Integer classNum) {
                this.classNum = classNum;
            }

            public Integer getClassState() {
                return classState;
            }

            public void setClassState(Integer classState) {
                this.classState = classState;
            }

            public String getClassSubjectTag() {
                return classSubjectTag;
            }

            public void setClassSubjectTag(String classSubjectTag) {
                this.classSubjectTag = classSubjectTag;
            }

            public String getCreateTime() {
                return createTime;
            }

            public void setCreateTime(String createTime) {
                this.createTime = createTime;
            }

            public String getCreateUser() {
                return createUser;
            }

            public void setCreateUser(String createUser) {
                this.createUser = createUser;
            }

            public Integer getEnabled() {
                return enabled;
            }

            public void setEnabled(Integer enabled) {
                this.enabled = enabled;
            }

            public String getId() {
                return id;
            }

            public void setId(String id) {
                this.id = id;
            }

            public String getLecturer() {
                return lecturer;
            }

            public void setLecturer(String lecturer) {
                this.lecturer = lecturer;
            }

            public String getLecturerInfo() {
                return lecturerInfo;
            }

            public void setLecturerInfo(String lecturerInfo) {
                this.lecturerInfo = lecturerInfo;
            }

            public Integer getPublishStatus() {
                return publishStatus;
            }

            public void setPublishStatus(Integer publishStatus) {
                this.publishStatus = publishStatus;
            }

            public String getUpdateTime() {
                return updateTime;
            }

            public void setUpdateTime(String updateTime) {
                this.updateTime = updateTime;
            }

            @Override
            public int getItemType() {
                return TrainExpandAdapter.TYPE_TRAIN_COURSE;
            }
        }

        public String getClassId() {
            return classId;
        }

        public void setClassId(String classId) {
            this.classId = classId;
        }

        public List<ClassModelListBean> getClassModelList() {
            return classModelList;
        }

        public void setClassModelList(List<ClassModelListBean> classModelList) {
            this.classModelList = classModelList;
        }

        public String getCreateTime() {
            return createTime;
        }

        public void setCreateTime(String createTime) {
            this.createTime = createTime;
        }

        public String getCreateUser() {
            return createUser;
        }

        public void setCreateUser(String createUser) {
            this.createUser = createUser;
        }

        public String getId() {
            return id;
        }

        public void setId(String id) {
            this.id = id;
        }

        public String getName() {
            return name;
        }

        public void setName(String name) {
            this.name = name;
        }

        public String getParentId() {
            return parentId;
        }

        public void setParentId(String parentId) {
            this.parentId = parentId;
        }

        public Integer getSort() {
            return sort;
        }

        public void setSort(Integer sort) {
            this.sort = sort;
        }

        public List<?> getTrainingClassList() {
            return trainingClassList;
        }

        public void setTrainingClassList(List<?> trainingClassList) {
            this.trainingClassList = trainingClassList;
        }

        public String getTrainingId() {
            return trainingId;
        }

        public void setTrainingId(String trainingId) {
            this.trainingId = trainingId;
        }

        public String getUpdateTime() {
            return updateTime;
        }

        public void setUpdateTime(String updateTime) {
            this.updateTime = updateTime;
        }
    }

    public String getClassId() {
        return classId;
    }

    public void setClassId(String classId) {
        this.classId = classId;
    }

    public List<TrainWeekBean.ClassModelListBean> getClassModelList() {
        return classModelList;
    }

    public void setClassModelList(List<TrainWeekBean.ClassModelListBean> classModelList) {
        this.classModelList = classModelList;
    }

    public String getCreateTime() {
        return createTime;
    }

    public void setCreateTime(String createTime) {
        this.createTime = createTime;
    }

    public String getCreateUser() {
        return createUser;
    }

    public void setCreateUser(String createUser) {
        this.createUser = createUser;
    }

    public String getId() {
        return id;
    }

    public void setId(String id) {
        this.id = id;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public String getParentId() {
        return parentId;
    }

    public void setParentId(String parentId) {
        this.parentId = parentId;
    }

    public Integer getSort() {
        return sort;
    }

    public void setSort(Integer sort) {
        this.sort = sort;
    }

    public List<TrainWeekBean> getTrainingClassList() {
        return trainingClassList;
    }

    public void setTrainingClassList(List<TrainWeekBean> trainingClassList) {
        this.trainingClassList = trainingClassList;
    }

    public String getTrainingId() {
        return trainingId;
    }

    public void setTrainingId(String trainingId) {
        this.trainingId = trainingId;
    }

    public String getUpdateTime() {
        return updateTime;
    }

    public void setUpdateTime(String updateTime) {
        this.updateTime = updateTime;
    }
}
